home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Standards 1994 January / InfoMagic Standards - January 1994.iso / misc / merit / noop / papers / tools.rfc < prev    next >
Text File  |  1992-03-14  |  23KB  |  749 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.            
  17.            
  18.                                          DRAFT - Tools RFC
  19.            
  20.                                      S. Hares and C. Wittbrodt
  21.            
  22.                                          March 14, 1992
  23.                                          version 1
  24.  
  25.            
  26.            
  27.            
  28.            
  29.            
  30.            
  31.            
  32.            
  33.            
  34.            
  35.            
  36.            
  37.            
  38.            
  39.            
  40.            
  41.            
  42.            
  43.            
  44.            
  45.            
  46.            
  47.            
  48.            
  49.            
  50.            
  51.            
  52.            
  53.            
  54.            
  55.            
  56.            
  57.            
  58.            
  59.            
  60.  
  61.                                           1
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.            
  77.            
  78.  
  79.  
  80.                     Draft  - TOOLS RFC            March 14, 1992
  81.            
  82.            
  83.           1.  STATUS
  84.            
  85.           This memo  specifies tools which are necessary  to debug problems
  86.           in the  deployment and maintenance of networks using ISO 8473[1],
  87.           the connectionless network layer protocol (CLNP).   This document
  88.           will be  submitted to the RFC  editor as a  proposed standard for
  89.           the OSI Internet.
  90.            
  91.           To  support some of the  needed tools (ping  and traceroute) this
  92.           memo specifies the   long  term  mechanism   outlined  in RFC1139
  93.           [2]. RFC 1139 specifies that when an ISO standard is adopted that
  94.           provides  functionality similar  to that  described by  RFC 1139,
  95.           then RFC  1139 will be  come obsolete  and superseded by  the ISO
  96.           standard.  ISO work  is progressing on an ISO echo  function, but
  97.           not  completed yet  and at this  time, there is no estimated date
  98.           of completion.     When an  echo function is  defined for  an ISO
  99.           standard,  both the  RFC  1139 echo  function  and the  ISO  echo
  100.           function will need to be supported for a period of transition. 
  101.  
  102.           Once  the  ISO  echo function  has  been  adopted  (and RFC  1139
  103.           obsolete  by the  ISO standard), an  RFC defining  the transition
  104.           period  for support  of both  echo functions  will be  written to
  105.           supersede this document. 
  106.  
  107.            
  108.           2.  ABSTRACT
  109.            
  110.           This memo specifies the following  three necessary tools to debug
  111.           problems in the deployment and maintenance of  networks using ISO
  112.           8473 (CLNP):
  113.  
  114.                - ping or ISO Echo function
  115.                - traceroute function which uses the ISO Echo function
  116.                - routing table dump function
  117.            
  118.            
  119.           3.  INTRODUCTION
  120.            
  121.           Currently  in the Internet, OSI protocols are being used more and
  122.           more.     As    the   network    managers   of  an  Internet once
  123.           predominantly  a  TCP/IP network  began  deploying  parts of  the
  124.           emerging  OSI  Internet,   it became apparent that network  layer
  125.           ISO network debugging tools  were for almost  nonexisting.   When
  126.           such    tools   existed,  different  implementations didn't  work
  127.           together.
  128.  
  129.                                           2
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.            
  145.           As stated in RFC 1139 a simple network layer mechanism is        
  146.           necessary to allow  systems to  be probed to  test network  layer
  147.           integrity.    RFC 1139  goes on  to  describe two  different ping
  148.           capabilities,  one a  long term  solution, and  one a  short term
  149.           solution.  The problem becoming more and more prevalent in  the  
  150.           OSI   Internet  is  that some vendors  implemented the short term
  151.           solution  and some  implemented the  long  term one.    The   two
  152.           solutions do not work together, i.e., a ping from a host with the
  153.           short term version to one with the  long term version  will   not
  154.           work, and  visa versa.   Also, some  hosts and  routers have  not
  155.           implemented a  ping at  all.    The two solutions   provided   to
  156.           simplify the situation, have instead complicated it.
  157.            
  158.             
  159.           4.  SPECIFICATION
  160.            
  161.           This  document's   purpose  is   to  specify  a   standard  ping,
  162.           traceroute, and OSI routing table dumping mechanisms for use  for
  163.           the ISO  8473 (CLNP) protocol  in the  OSI Internet.   A detailed
  164.           description  of   the  specified   mechanisms  is below.    These
  165.           mechanism  should  be  available on  every  router  (intermediate
  166.           system) or host (end system)  that   provides  OSI  service   for
  167.           the Internet.  These three  functions are the basic tool  set for
  168.           the  OSI  network
  169.           layer for the Internet.
  170.            
  171.            
  172.           4.1.  PING
  173.            
  174.           Protocol Support
  175.           -----------------
  176.           The  long term  echo  mechanism,  as  described  in    RFC  1139,
  177.           requires  the use of two new type values in the packet header  of
  178.           the ISO  8473 Network  Protocol   Data Units   (NPDUs).   The two
  179.           values are:
  180.  
  181.                1E(hex)  - for the Echo Request Selector and,
  182.                1F(hex)  - for the Echo Reply Selector.
  183.  
  184.           Nodes which  support ISO  8473 but do  not support these  two new
  185.           values (for  the type code option  field in the header  of an ISO
  186.           8473 (NPDU) will  send back an error  packet IF the ERROR  report
  187.           flag is set in the NPDU. 
  188.  
  189.           To support  a ping function for ISO 8473, all end systems (hosts)
  190.           and intermediate  systems (routers) must support  the "long term"
  191.           echo function as  defined by RFC 1139   AND   also set the  ERROR
  192.           report flag in the 8473 header.
  193.  
  194.           The  setting of the ERROR  report flag is  required  because this
  195.           allows  a  way   for  a  compliant  host  or  router  to  ping  a
  196.  
  197.                                           3
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.                     DRAFT - OSI Tools             March 14, 1991
  213.  
  214.           non-compliant  host or  router.    When  a non-complaint  host or
  215.           router  receives a "ping" NPDU  with the new  type function (Echo
  216.           Request Selector), it  will send back an ISO 8473  ER NPDU to the
  217.           originating host.
  218.  
  219.           4.1.2) Functions to be supported in "ping" utility
  220.  
  221.           A ping utility should able to provide the Round trip time of each
  222.           packet,  plus the  average minimum  and maximum RTT  over several
  223.           ping packets.  When an ER NPDU  is received by the node, the ping
  224.           utility should report the error code to the user. 
  225.  
  226.            
  227.           4.2.  TRACEROUTE
  228.            
  229.           The  CLNP trace  is similar  to the ping  utility except  that it
  230.           utilizes  the "Lifetime"  field  in  the  ISO  8473  NPDU.    The
  231.           "Lifetime" field  serves the same function  as the  Time  To Live
  232.           (TTL) field does in an IP packet.  A node (router or host) cannot
  233.           forward ISO 8473 NPDU with  a value for the Lifetime of zero.  If
  234.           the ERROR REPORT flag is set in  the ISO 8473 PDU, an ER  (error)
  235.           NPDU will be returned to the originator of the packet.  
  236.  
  237.  
  238.           4.2.1) Basic TRACEROUTE
  239.  
  240.  
  241.           If a ISO 8473  PDU with a type code of  Echo-request is sent with
  242.           "Lifetime" field  value of 1, the  first hop node (router  or end
  243.           system) will either return an ER NPDU to the originator the NPDU.
  244.           If  the first hop node supports the "Echo-Request" type field the
  245.           error code will be either:
  246.  
  247.                A0 (hex) - Lifetime Expired while Data Unit in Transit
  248.                A1 (hex) - Lifetime Expired during Re-assembly
  249.  
  250.           If the first hop node does not support "Echo-Request" type field,
  251.           please return the Error code:
  252.  
  253.                B0 (hex) - Unsupported Option not Specified.
  254.  
  255.  
  256.           When trying to trace  a route to  a remote note, the  destination
  257.           address  in the  Echo-Request  PDU  sent  should be  this  remote
  258.           destination.   By using increasing values in the "Lifetime" field
  259.           a route can be traced through the network to the remote node.
  260.           This  traceroute function  should be  implemented on  each system
  261.           (host or router) to  allow a user  to trace a  network path to  a
  262.           remote host.
  263.  
  264.  
  265.                                           4
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.                     DRAFT - OSI Tools             March 14, 1991
  281.  
  282.           The error  message is used as evidence of what the first hop was.
  283.           The  originator then sends a packet with a "lifetime" field value
  284.           of  2.  The  first hop decrements the  "Lifetime" and because the
  285.           "Lifetime"   is still greater  than 0,  it forwards it  on.   The
  286.           second hop  decrements the  "Lifetime" field  value and sends  an
  287.           Error PDU (ER  NPDU) with one of the two "Lifetime Expired" error
  288.           codes  listed above to the originator.  This sequence is repeated
  289.           until either:
  290.  
  291.                - the remote host is reached an either an
  292.                  Echo-Reply PDU is sent back or (for
  293.                  nodes that do not have the required
  294.                  Echo support) an ER PDU is sent back, or
  295.  
  296.                - the an ER PDU is received with error code (B0) indicating
  297.                  that a node will not pass the Echo-Reply packet, or
  298.  
  299.                - an ER  NPDU is received with one of the following errors:
  300.  
  301.                     80(hex)  - Destination Address Unreachable
  302.                     81(hex)  - Destination Address Unknown.
  303.  
  304.  
  305.           If any of the following Error codes are received in an ER PDU,  a
  306.           second PDU should be sent by the originating node:
  307.  
  308.                     Code       Reason from 8473
  309.                     -----------------------------
  310.                     00(hex)  - Reason not specified
  311.                     01(hex)  - Protocol procedure error
  312.                     02(hex)  - Incorrect checksum
  313.                     03(hex)  - PDU Discarded due to Congestion
  314.                     04(hex)  - Header Syntax Error (cannot be parsed)
  315.                     05(hex)  - Segmentation needed but not permitted
  316.                     06(hex)  - Incomplete PDU received
  317.                     07(hex)  - Duplicate Option
  318.                     B1(hex)  - Unsupported Protocol Version
  319.                     B2(hex)  - Unsupported Security Option
  320.                     B3(hex)  - Unsupported Source Routeing Option
  321.                     B4(hex)  - Unsupported Recording of Route Option
  322.                     C0(hex)  - Reassembly Interface
  323.  
  324.           If one of these error is detected, please return the error  value
  325.           to  the  user.   More  than two  Echo  NPDUs,  may be  sent  at a
  326.           "Lifetime" value.  The number of additional echo NPDUs is left up
  327.           to the implementation of this traceroute function.  
  328.            
  329.           If one of the  following errors is received, AND  "partial source
  330.           route" is not specified  in the Echo-Request NPDU, send  a second
  331.           Echo-Request NPDU to the destination at a "Lifetime" value:
  332.  
  333.                                           5
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.                     DRAFT - OSI Tools             March 14, 1991
  349.  
  350.                     Code      Reason from 8473
  351.                     --------------------------------
  352.                     90(hex)   Unspecified Source Routeing Error
  353.                     91(hex)   Syntax Error in Source Routeing Field
  354.                     92(hex)   Unknown Address in Source Routeing Field
  355.                     93(hex)   Path not Acceptable
  356.  
  357.           (The Echo-request NPDU may have been damaged in shipping  through
  358.           the network.)
  359.  
  360.           4.2.2) Use of Partial Source route in traceroute
  361.  
  362.           The current IP traceroute has a 3rd party or "loose source route"
  363.           function.   The ISO 8473 protocol also supports a "partial source
  364.           routeing" function.  However, if a node (router or host) does not
  365.           support  the "partial source  routeing" function a  ISO 8473 NPDU
  366.           gets  passed along the path  "exactly as though  the function has
  367.           not  been selected.   The  PDU shall  not be  discarded for  this
  368.           reason."[3]
  369.  
  370.           A partial source route function in the ISO Traceroute will set in
  371.           the  option fields the "source routeing" option, and the "partial
  372.           source  routeing" parameter within that option.  To support a 3rd
  373.           party or  "loose source route"  traceroute function, a  node will
  374.           send the Echo-Request NPDU with the "loose source routeing" field
  375.           set.  
  376.           The functioning of the  3rd party/"loose source route" traceroute
  377.           is the same except the following error cause the traceroute to be
  378.           terminated:
  379.  
  380.                     Code      Reason from ISO 8473
  381.                     --------------------------------------------------
  382.                     92        Unknown Address in Source Routeing Field
  383.                     93        Path not Acceptable
  384.  
  385.           These errors may indicate a problem with the "loose source route"
  386.           listed in the Echo-Request NPDU for this destination.  Additional
  387.           NPDUs  with the same lifetime will only repeat this error.  These
  388.           errors should be reported to the user of the traceroute function.
  389.  
  390.  
  391.           4.2.3) Information needed from a Traceroute utility
  392.  
  393.           A traceroute utility should  provide the following information to
  394.           the user:
  395.  
  396.                - NET systems the pathway goes through,
  397.                - ping times (in Round trip times) for each
  398.                     step of the way,
  399.                - error codes from ER PDU received as a 
  400.  
  401.                                           6
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.                     DRAFT - OSI Tools             March 14, 1991
  417.  
  418.                  response to the an Echo-Request packet, and
  419.                - any other error conditions encounter
  420.                  by traceroute.
  421.  
  422.  
  423.           4.3.  OSI routing table dump
  424.            
  425.           Each OSI host (end system) or router  (intermediate  system)
  426.           need  to be able to dump any of its routing tables.  Routing
  427.           tables may come from the:
  428.            
  429.              a.) the ES-IS information
  430.              b.) static
  431.              c.) IS-IS
  432.              d.) IDRP
  433.            
  434.           or any other source.
  435.                 
  436.           Each system must be  able to dump the routing table  entries from
  437.           the console.   A  method  must exist  to provide  these.   It  is
  438.           suggested  that   a showosi  routes command  be created  with the
  439.           following options:
  440.            
  441.                     - a        for all routes
  442.                     - esis     for es-is routes
  443.                     - isis     for is-is routes
  444.                     - idrp     for idrp routes
  445.                     - static   for static routes
  446.                     - other    for routes from other sources.
  447.  
  448.            
  449.           In  addition,  it is  optional  but highly  recommended  that the
  450.           routing   tables be available  from via of  the following network
  451.           protocols:
  452.                 
  453.                  a.) SNMP 
  454.  
  455.                     Internet MIBs
  456.  
  457.                     RFC 1238 CLNS MIB [4]
  458.                          NET of this router
  459.                          ES adjacencies,
  460.                          ES Connection Timer,
  461.                          ES hold timer
  462.                          IS Adjacencies
  463.  
  464.  
  465.  
  466.                     RFC XXXX Integrated IS-IS MIB [5]
  467.                     (***Editor's note - this is the type of information
  468.  
  469.                                           7
  470.  
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  
  477.  
  478.  
  479.  
  480.  
  481.  
  482.  
  483.  
  484.                     DRAFT - OSI Tools             March 14, 1991
  485.  
  486.                      I think should be included, but I need feed back on
  487.                      this prior to specifying particular MIB variables.)
  488.  
  489.                          IS Reachability information
  490.                          IS L1 Adjacencies
  491.                          IS L2 ADjacencies
  492.  
  493.                     RFC XXXX IDRP MIB [6]
  494.                     (***Editor's note - this is the type of information
  495.                      I think should be included, but I need feed back on
  496.                      this prior to specifying particular MIB variables.)
  497.                          per BIS router:
  498.                          InternalBIS,
  499.                          IntraIS,
  500.                          ExternalBISNeighbor,
  501.                          Internal Systems,
  502.                          LocalRDI,
  503.                          RDC-Config,
  504.                          Local-SNPA,
  505.                          MultiExit,
  506.                          RouteServer
  507.                          holdTime,
  508.                          CloseWaitDelay
  509.                          Local RIB
  510.                          Local FIB
  511.  
  512.                          per BIS neighbor:
  513.                          BIS_NET
  514.                          BIS_RDI
  515.                          BIS_RDC
  516.                          Adj-RIB information
  517.  
  518.                  b.) CMIP agent 
  519.  
  520.                          ISO 10733 [7] (Common network layer)
  521.                               Section 6.4)
  522.                               Network Entity Managed Object
  523.                                    networkEntityTitles
  524.  
  525.                               linkage-ISO9542ES-P
  526.                                    HoldingTimerMultipler
  527.                                    manualISSNPAAddress
  528.                                    defaultESConfigTimer
  529.                                    activeESConfigTimer
  530.                                    isReachabilityChanges
  531.  
  532.                               linkage-ISO9542IS-P
  533.                                    holdingTimerMultiplier
  534.                                    isConfigurationTimer
  535.                                    suggestedESConfigurationTimer
  536.  
  537.                                           8
  538.  
  539.  
  540.  
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.  
  550.  
  551.  
  552.                     DRAFT - OSI Tools             March 14, 1991
  553.  
  554.                                    redirectHoldingTimer
  555.                                    eSReachabilityChanges
  556.  
  557.                     ISO 10589 [8] (IS-IS) - GDMO
  558.                     (***Editor's note - this is the type of information
  559.                      I think should be included, but I need feed back on
  560.                      this prior to specifying particular MIB variables.)
  561.                          IS Reachability information
  562.                          IS L1 Adjacencies
  563.                          IS L2 ADjacencies
  564.  
  565.            
  566.                     ISO 10747 [3] (IDRP)  - GDMO
  567.                     (***Editor's note - this is the type of information
  568.                      I think should be included, but I need feed back on
  569.                      this prior to specifying particular MIB variables.)
  570.             
  571.                          per BIS router:
  572.                          InternalBIS,
  573.                          IntraIS,
  574.                          ExternalBISNeighbor,
  575.                          Internal Systems,
  576.                          LocalRDI,
  577.                          RDC-Config,
  578.                          Local-SNPA,
  579.                          MultiExit,
  580.                          RouteServer
  581.                          holdTime,
  582.                          CloseWaitDelay
  583.                          Local FIB
  584.                          Local RIB
  585.  
  586.                          per BIS neighbor:
  587.                          BIS_NET
  588.                          BIS_RDI
  589.                          BIS_RDC
  590.                          Adj-RIB information
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.  
  602.  
  603.  
  604.  
  605.                                           9
  606.  
  607.  
  608.  
  609.  
  610.  
  611.  
  612.  
  613.  
  614.  
  615.  
  616.  
  617.  
  618.  
  619.  
  620.                     DRAFT - OSI Tools             March 14, 1991
  621.  
  622.  
  623.  
  624.            
  625.            
  626.           5.  REFERENCES
  627.  
  628.           [1] ISO/IEC  8473, Information Processing Systems, "Protocol
  629.           for  Providing  the  Connectionless-mode Network Service and
  630.           Provision of Underlying Service".  May, 1987.
  631.            
  632.           [2] R. Hagens, "An Echo Function for ISO 8473", Request  For
  633.           Comment   #1139,  January  1990.   DDN  Network  Information
  634.           Center, SRI International.
  635.            
  636.           [3]   ISO/IEC  DIS   10747  Information   Processing  Systems   -
  637.           Telecommunications and  Information  Exchange between  Systems  -
  638.           Protocol for Exchange of Inter-domain  Routeing Information among
  639.           Intermediate Systems to Support Forwarding of ISO 8473 PDUs.
  640.  
  641.           [4]  RFC 1238 CLNS MIB (Greg  Satz) - for use with Connectionless
  642.           Network Protocol (ISO 8473) and End system to Intermediate System
  643.           Protocol (ISO 9452)
  644.  
  645.           [5] RFC xxx Integrated IS-IS MIB - (Chris Gunner) 
  646.  
  647.           [6] RFC xxxx IDRP MIB (Hares)
  648.  
  649.           [7] ISO/IEC  10733 - Information  Technology - Telecommunications
  650.           and Information Exchange between Systems - Elements of Management
  651.           Information Relating to OSI Network Layer Standards
  652.  
  653.           [8]   ISO/IEC  10589   -   Information   Processing   Systems   -
  654.           Telecommunications  and Information  Exchange  between Systems  -
  655.           Protocol for Exchange of  Intra-Domain Routeing Information among
  656.           Intermediate Systems.
  657.            
  658.            
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.                                           10
  674.  
  675.  
  676.  
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.                     DRAFT - OSI Tools             March 14, 1991
  689.  
  690.  
  691.            
  692.                                          TABLE OF CONTENTS
  693.            
  694.             Section 1 STATUS ......................................    2
  695.             Section 2 ABSTRACT ....................................    2
  696.             Section 3 INTRODUCTION ................................    2
  697.             Section 4 SPECIFICATION ...............................    3
  698.             Section 4.1 PING ......................................    3
  699.             Section 4.2 TRACEROUTE ................................    4
  700.             Section 4.3 OSI routing table dump ....................    7
  701.             Section 5 REFERENCES ..................................    11 
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731.  
  732.  
  733.  
  734.  
  735.  
  736.  
  737.  
  738.  
  739.  
  740.  
  741.                                           11
  742.  
  743.  
  744.  
  745.  
  746.  
  747.  
  748.  
  749.